package org.example.mapper;

import org.example.dto.CarDTO;
import org.example.dto.PersonDTO;
import org.example.entity.Car;
import org.example.entity.Person;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;

import java.util.List;

/**
 * @author yangdc
 * @date 2025/4/23
 */
@Mapper
public interface PersonMapper {
    // ----------------2、列表转换----------------
    // 可以直接使用 personsToPersonDTOs，在生成的代码中会自动循环调用 personToPersonDto
    List<CarDTO> personsToPersonDTOs(List<Car> cars);
    @Mapping(target = "fullName", source = "name")
    PersonDTO personToPersonDto(Person person);

    // ----------------3、自定义转换方法----------------
    default PersonDTO personToPersonListDTO(Person person) {
        //自定义实现的方法也会被其它转换方法调用
        return null;
    }
}
